# 作者: 菅世博
# 2025年02月18日14时17分23秒
# 512326042@qq.com

name_list = ["zhangsan", "lisi", "wangwu"]
print(f'id(name_list)={id(name_list)}')  # id(name_list)=140732000000000
# 查找
print('-' * 50)
# 1、取值和取索引
print(name_list[1])  # lisi
print(name_list.index("lisi"))  # 1

# 修改
print('-' * 50)
name_list[1] = "李四" # 修改指定索引的数据
print(name_list)
# 列表指定的索引超出范围，程序会报错！
# name_list[3] = "王小二"  # IndexError: list assignment index out of range、

# 增加
print('-' * 50)
# 1、在末尾增加
name_list.append("王小二") # 在末尾增加
print(name_list)
# 2、在指定位置插入
name_list.insert(1, "小二哥") # 在第二个位置插入
print(name_list)
# 3、将另一个列表的所有数据追加到当前列表的末尾
temp_list = ["孙悟空", "猪二哥", "沙师弟"]
name_list.extend(temp_list) # 将temp_list中的数据追加到name_list的末尾
print(name_list)
print(f'id(name_list)={id(name_list)}')  # id不变

# 删除
print('-' * 50)
# remove方法删除指定数据
name_list.remove("小二哥")  # 删除小二哥
print(name_list)
# pop方法默认删除最后一个数据
name_list.pop()  # 删除最后一个数据
print(name_list)
# pop方法可以指定删除第几个数据
name_list.pop(3)  # 删除第四个数据
print(name_list)
# del关键字删除列表
del name_list[0]  # 删除第一个数据
print(name_list)
# clear方法清空列表
name_list.clear()  # 清空列表
print(name_list)
print(f'id(name_list)={id(name_list)}')  # id不变
